home *** CD-ROM | disk | FTP | other *** search
/ Cre@te Online 2000 December / Cre@teOnline CD05.iso / MacSoft / XML ConsoleMax.sea / XML ConsoleMax / Required / esc.jar / com / extensibility / xml / NotationDeclaration.class (.txt) < prev    next >
Encoding:
Java Class File  |  2000-06-30  |  3.1 KB  |  95 lines

  1. package com.extensibility.xml;
  2.  
  3. import com.extensibility.util.Debug;
  4. import com.extensibility.util.StringUtilities;
  5. import java.util.Vector;
  6.  
  7. public class NotationDeclaration extends BaseDeclaration implements Cloneable {
  8.    String publicID;
  9.    URI systemID;
  10.  
  11.    public NotationDeclaration(String var1, String var2, URI var3) {
  12.       super(var1);
  13.       this.setPublicID(var2);
  14.       this.setSystemID(var3);
  15.    }
  16.  
  17.    public Object clone() {
  18.       NotationDeclaration var1 = null;
  19.  
  20.       try {
  21.          var1 = (NotationDeclaration)super.clone();
  22.       } catch (CloneNotSupportedException var3) {
  23.          Debug.assert(false, "Problem cloning NotationDeclaration.");
  24.       }
  25.  
  26.       return var1;
  27.    }
  28.  
  29.    public String getClassName() {
  30.       return "com.extensibility.xml.NotationDeclaration";
  31.    }
  32.  
  33.    public String getPublicID() {
  34.       return this.publicID;
  35.    }
  36.  
  37.    public URI getSystemID() {
  38.       return this.systemID;
  39.    }
  40.  
  41.    public void setPublicID(String var1) {
  42.       String var2 = this.publicID;
  43.       this.publicID = var1;
  44.       ((BaseDeclaration)this).fireChangeEvent(63, var2);
  45.    }
  46.  
  47.    public void setSystemID(URI var1) {
  48.       URI var2 = this.systemID;
  49.       this.systemID = var1;
  50.       ((BaseDeclaration)this).fireChangeEvent(62, var2);
  51.    }
  52.  
  53.    public Vector getPrerequisites(SchemaIntf var1) {
  54.       Vector var2 = super.getPrerequisites(var1);
  55.       BaseDeclaration.addPrerequisite(var1, var2, this.publicID, true);
  56.       BaseDeclaration.addPrerequisite(var1, var2, this.systemID == null ? null : this.systemID.toSource(), true);
  57.       return var2;
  58.    }
  59.  
  60.    public boolean references(InternalPEDeclaration var1) {
  61.       String var2 = String.valueOf("%").concat(String.valueOf(var1));
  62.       if (this.publicID != null && this.publicID.indexOf(var2) >= 0) {
  63.          return true;
  64.       } else {
  65.          return this.systemID != null && this.systemID.toSource().indexOf(var2) >= 0;
  66.       }
  67.    }
  68.  
  69.    public void checkForErrors(SchemaIntf var1) {
  70.       super.checkForErrors(var1);
  71.       if (this.publicID != null && !DTDParser.isPubId(this.publicID)) {
  72.          super.errors.addElement(new ParserException(221, this.publicID));
  73.       }
  74.  
  75.    }
  76.  
  77.    public String getSource() {
  78.       StringBuffer var1 = new StringBuffer(String.valueOf(String.valueOf("<!NOTATION ").concat(String.valueOf(super.name))).concat(String.valueOf(" ")));
  79.       if (this.publicID != null) {
  80.          if (this.systemID == null) {
  81.             var1.append(String.valueOf("PUBLIC ").concat(String.valueOf(DTDUtilities.convertPEReferences(StringUtilities.doubleQuoted(this.publicID), true))));
  82.          } else {
  83.             var1.append(String.valueOf(String.valueOf(String.valueOf("PUBLIC ").concat(String.valueOf(DTDUtilities.convertPEReferences(StringUtilities.doubleQuoted(this.publicID), true)))).concat(String.valueOf(" "))).concat(String.valueOf(DTDUtilities.convertPEReferences(StringUtilities.doubleQuoted(this.systemID.toSource()), true))));
  84.          }
  85.       } else if (this.systemID != null) {
  86.          var1.append(String.valueOf("SYSTEM ").concat(String.valueOf(DTDUtilities.convertPEReferences(StringUtilities.doubleQuoted(this.systemID.toSource()), true))));
  87.       } else {
  88.          var1.append("PUBLIC \"\"");
  89.       }
  90.  
  91.       var1.append(String.valueOf(">").concat(String.valueOf(BaseDeclaration.LINE_SEPARATOR)));
  92.       return var1.toString();
  93.    }
  94. }
  95.